<?php
$minutes = array('00'=>'00', '15'=>'15', '30'=>'30', '45'=>'45');
?>
<table cellpadding="0" cellspacing="0" id="table_futures">
    <?php
    $tipos_tareas = array('show' => 'Show', 'reception' => 'Presentación', 'animation' => 'Animación', 'production' => 'Obra', 'service' => 'Servicios');
    foreach ($array_todo as $hora_id => $hora) {
        ?>
    <tr>
        <td class="td_hour">
            <p><?php echo $hora_id; ?></p>
                <?php
                echo $this->Html->link(
                $this->Html->image('button_more.gif', array('width' => 12, 'alt' => 'Agregar Cumpleaños/Evento')), array('controller' => 'jobs', 'action' => 'add', strtotime($fecha_dia . ' ' . $hora_id . ':00:00')), array('escape' => false)
                );
                ?>
        </td>
        <td>
                <?php
                $fin_anterior = 0;
                $inicio_anterior = 0;
                $margin_anterior = 0;
                $cantidad_por_hora = 0;
                foreach ($hora as $minute) {
                    $cantidad_por_hora++;
                    $clase = '';
                    $style = '';
                    //si este empieza despues de que termina el anterior, lo hago saltar de linea
                    if ($fin_anterior != 0 && $fin_anterior <= $minute['inicio']) {
                        $clase = ' clear';
                        $margin_anterior = 0;
                        //si a la vez esta separa un par de minutos, le pongo un margin-top
                        if ($fin_anterior < $minute['inicio']) {
                            $diferencia = date('i', strtotime($minute['inicio'])) - date('i', strtotime($inicio_anterior));
                            $margin_anterior = $diferencia;
                            $style = 'margin-top: ' . $diferencia . 'px;';
                        }
                    } elseif ($inicio_anterior != 0 && $inicio_anterior < $minute['inicio']) {
                        $diferencia = date('i', strtotime($minute['inicio'])) - date('i', strtotime($inicio_anterior));
                        $diferencia += $margin_anterior;
                        $style = 'margin-top: ' . $diferencia . 'px;';
                        $margin_anterior = $diferencia;
                    } else {
                        $diferencia = date('i', strtotime($minute['inicio'])) - date('i', strtotime($inicio_anterior));
                        $diferencia += $margin_anterior;
                        $style = 'margin-top: ' . $diferencia . 'px;';
                    }
                    //no me entran mas de 7 por linea, entonces si hay mas, los bajo
                    if ($cantidad_por_hora % 7 == 0) {
                        $clase = ' clear';
                        $style = 'margin-top: 0px;';
                        $margin_anterior = 0;
                    }

                    foreach ($minute['info'] as $tipo_trabajo => $info) {
                        ?>
            <div class="trabajo<?php echo $clase; ?>" style="<?php echo $style; ?>" ondblclick="redirigir_trabajo('<?php echo $tipo_trabajo; ?>', <?php echo $info['id']; ?>); return false;">
                <div class="calendar_fecha"><?php echo date('H:i', strtotime($minute['inicio'])) . '-' . date('H:i', strtotime($minute['fin'])) ?></div>
                <div class="calendar_info">
                                <?php
                                //si es un cumple o un evento
                                if ($tipo_trabajo == 'Job') {
                                    $tipo = $info['type'] == 'birthday' ? 'Cumpleaños' : 'Evento';
                                    ?>
                    <p><b><?php echo $tipo ?></b></p>
                    <p><?php echo $info['address'] ?></p>
                                    <?php
                                    //voy a armar un array con los shows, uno con las recepciones, animació, servicios y obras
                                    $array_cosas = array();
                                    foreach ($info['JobsDetail'] as $jobs_detail) {
                                        $tipo = $jobs_detail['type'];
                                        $array_cosas[$tipo][$jobs_detail['id']] = $jobs_detail;
                                    }

                                    $texto_salida = '';
                                    $empleados_usados = array();
                                    $trajes_usados = array();
                                    foreach ($array_cosas as $tarea_type => $tarea) {
                                        ?>
                    <div class="job_detail_<?php echo $tarea_type ?>">
                                            <?php
                                            $texto_salida = '<b>' . $tipos_tareas[$tarea_type] . ': </b>';
                                            $aux_cant_emp = 0;
                                            foreach ($tarea as $tar) {
                                                $texto_salida .=!empty($tar['show_id']) ? $shows[$tar['show_id']] : '';
                                                $texto_salida .=!empty($tar['service_id']) ? $services[$tar['service_id']] . ', ' : '';
                                                $texto_salida .=!empty($tar['production_id']) ? $productions[$tar['production_id']] : '';
                                                $texto_salida .=!empty($tar['hours']) ? $tar['hours'] . 'hs' : '';

                                                foreach ($tar['JobsDetailsEmployee'] as $emp) {
                                                    if (!empty($emp['employee_id'])) {
                                                        $empleados_usados[$emp['employee_id']] = $employees[$emp['employee_id']];
                                                        if ($tarea_type == 'animation' || $tarea_type == 'show' || $tarea_type == 'production') {
                                                            $aux_cant_emp++;
                                                        }
                                                    } elseif (isset($emp['cost'])) {
                                                        //si no esta seteado el id del empleado, pero si el costo
                                                        if ($tarea_type == 'animation' || $tarea_type == 'show' || $tarea_type == 'production') {
                                                            $aux_cant_emp++;
                                                        }
                                                    }
                                                    if (!empty($emp['costume_id'])) {
                                                        //si es una recepcion anoto el nombre de los trajes
                                                        if ($tarea_type == 'reception') {
                                                            $texto_salida .= $costumes[$emp['costume_id']] . ', ';
                                                        }
                                                        $trajes_usados[$emp['costume_id']] = $costumes[$emp['costume_id']];
                                                    }
                                                }
                                                if ($tarea_type == 'animation' || $tarea_type == 'show' || $tarea_type == 'production') {
                                                    $texto_salida .= '(' . $aux_cant_emp . 'P), ';
                                                }
                                            }
                                            //me fijo si termina con una coma
                                            $texto_salida = substr($texto_salida, -2, 2) == ', ' ? substr($texto_salida, 0, -2) : $texto_salida;
                                            echo $texto_salida;
                                            ?>
                        <br />
                    </div>
                                        <?php
                                    }
                                    echo '<b>Trajes: </b>' . implode(', ', $trajes_usados);
                                    echo '<br />';
                                    echo '<b>Empleados: </b>' . implode(', ', $empleados_usados);

                                }
                                //si es una obra de teatro
                                if ($tipo_trabajo == 'Theater') {
                                    ?>
                    <b>Obra de Teatro: </b><?php echo $info['name'] ?>
                    <br />
                                    <?php
                                    echo $info['address'];

                                    if (isset($info['TheatersEmployee'])) {
                                        foreach ($info['TheatersEmployee'] as $emp) {
                                            if (!empty($emp['employee_id'])) {
                                                $empleados_usados[$emp['employee_id']] = $employees[$emp['employee_id']];
                                            }
                                        }
                                    }
                                    if (isset($info['TheatersCostume'])) {
                                        foreach ($info['TheatersCostume'] as $costume) {
                                            if (!empty($costume['costume_id'])) {
                                                $trajes_usados[$costume['costume_id']] = $costumes[$costume['costume_id']];
                                            }
                                        }
                                    }
                                    echo '<br />';
                                    echo '<b>Trajes: </b>' . implode(', ', $trajes_usados);
                                    echo '<br />';
                                    echo '<b>Empleados: </b>' . implode(', ', $empleados_usados);
                                    if ($theater['Theater']['description'] != '') {
                                        echo '<br />';
                                        echo '<b>Notas: </b>' . $theater['Theater']['description'];
                                    }
                                }
                                ?>
                </div>
            </div>
                        <?php
                        $fin_anterior = $minute['fin'];
                        $inicio_anterior = $minute['inicio'];
                    }
                }
                ?>
        </td>
    </tr>
        <?php
    }
    ?>

</table>
<script type="text/javascript">

    (function($){
        // Date picker
        $("#FutureDateFrom").datepicker({
            //yearRange: '1970:2010',
            defaultDate: new Date(),
            dateFormat: 'dd/mm/yy',
            changeMonth: true,
            changeYear: true
        });

    })(jQuery);

    /**
     * Función para redirigir hacia el trabajo correspondiente
     * tipo_trabajo = 'Job' o 'Theater'
     */
    function redirigir_trabajo(tipo_trabajo, id){
        if(tipo_trabajo == 'Job'){
            var dir = '<?php echo SITE_URL ?>/jobs/view/'+id;
            window.location = dir;
        }
        if(tipo_trabajo == 'Theater'){
            var dir = '<?php echo SITE_URL ?>/theaters/view/'+id;
            window.location = dir;
        }
    }

    function fecha_hoy(){
        var hoy = $('#FutureHiddenActualDate').val();
        $('#FutureDateFrom').val(hoy);
        $('#FutureDateTo').val(hoy);
        $('#FuturePorDiaForm').submit();
    }
</script>

<style>
    #table_futures{
        border: 1px solid #000;
    }
    #table_futures td{
        padding: 0;
    }
    #table_futures .td_hour{
        width: 25px;
        padding: 6px;
        text-align: center;
        vertical-align: middle;
        border-right: 1px solid #DDDDDD;
    }
    .trabajo{
        border: 1px solid #000;
        float: left;
        width: 116px;
        font-size: 10px;
        cursor: pointer;
    }
    .calendar_fecha{
        text-align: center;
        background: none repeat scroll 0 0 #EEEEEE;
    }
    .calendar_info{
        background: none repeat scroll 0 0 #fff;
    }
</style>